Calculated = function (string) {

	var seed = {};
	
	seed.genXML = function () {
		var self = this;
		var temp_string = "";
		
		//write Calculated header
		temp_string += "\t<question type=\"calculated\">\n";
		
		//write Name
		temp_string += "\t\t<name>\n\t\t\t<text> <![CDATA[<p>" + self.name + "</p>]]></text>\n\t\t</name>\n";
		
		//write Text
		temp_string += "\t\t<questiontext format =\"html\">\n\t\t";
		temp_string += "<text> <![CDATA[<p>" + self.qtext + "</p>]]></text>\n\t\t</questiontext>\n\t\t<genralfeedback>" + self.feedback + "</generalfeedback>\n";
		temp_string += "<penalty> 0 </penalty>\n<hidden> 0 </hidden>\n<syncronize> 0 </syncronize>\n<single> 0 </single>\n<answernumbering> abc </answernumbering>\n";
		temp_string += "<shuffleanswers> 1 </shuffleanswers>"
		
		//write answer
		temp_string += "<answer fraction=\"100\">\n\t<text> <![CDATA[<p> " + self.atext + " </p>]]></text>\n\t\t<tolerance> " + self.tolerance + " </tolerance>\n\t\t<tolerancetype> 1 </toleranctype>\n";
		temp_string += "\t\t<correctanswerformat> " + self.CorrectAnswerFormat + " </correctanswerformat>\n\t\t<correctanswerlength> " + self.CorrectAnswerLength + " </correctanswerlength>\n</answer>\n";
		
		//write unit grading
		temp_string += "\t\t<unitgradingtype> " + self.UnitGradingType + " </unitgradingtype>\n\t\t<unitpenalty> 0.1 </unitpenalty>\n\t\t<showunits> 3 </showunits>\n\t\t<unitsleft> 0 </unitsleft>\n";
		
		//write dataset-repeat for each variable
		temp_string += "<\t\tdataset_definition>\n\t\t\t<status>\n\t\t\t\t<text> private </text>\n\t\t\t</status>\n\t\t\t<name>\n\t\t\t\t<text> " + self.VarName + " </text>\n";
		temp_string += "\t\t\t</name>\n\t\t\t<type> calculated </type>\n\t\t\t<distribution>\n\t\t\t\t<text> uniform </text>\n\t\t\t</distribution>\n\t\t\t<minimum>\n\t\t\t\t<text> ";
		temp_string += self.VarMin + " </text>\n\t\t\t<maximum>\n\t\t\t\t<text> " + self.VarMax + " </text>\n\t\t\t</maximum>\n\t\t\t<decimals>\n\t\t\t\t<text> " + self.VarDec + " </text>\n\t\t\t</decimals>\n\t\t\t<itemcount>";
		temp_string += "1 </itemcount>\n\t\t\t<dataset_items>\n\t\t\t\t<dataset_item>\n\t\t\t\t\t<number> 1 </number>\n\t\t\t\t\t<value> 2 </value>\n\t\t\t\t</dataset_item>\n\t\t\t\n<number_of_items>";
		temp_string += " 1 </number_of_items>\n\t\t\t</dataset_definition>\n</question>";
		
		return temp_string;
	};
	
	seed.genGift = function () {
		return "";
	};
	
	seed.genQSD = function () {
		return "";
	};
	
	seed.genPreviewHtml = function () {
		var self = this;
		return template('mc-bank-tmpl', self);
	};
	
	seed.set = function (options) {
		var self = this;
		$.each(options, function (key, value) {
			if (key === 'name') {
				self.name = value;
			} else if (key === 'qtexts') {
				self.qtexts = value;
			} else if (key === 'feedback') {
				self.feedback = value;
			} else if (key === 'ansFract') {
				self.ansFract = value;
			} else if (key === 'tolerance') {
				self.tolerance = value;
			} else if (key === 'atexts') {
				self.atexts = value;
			}else if (key === 'CorrectAnswerFormat') {
				self.CorrectAnswerFormat = value;
			}else if (key === 'CorrectAnswerLength') {
				self.CorrectAnswerLength = value;
			}else if (key === 'UnitGradingType') {
				self.UnitGradingType = value;
			}else if (key === 'VarMin') {
				self.VarMin = value;
			}else if (key === 'VarName') {
				self.VarName = value;
			}else if (key === 'VarMax') {
				self.VarMax = value;
			}else if (key === 'VarDec') {
				self.VarDec = value;
			}
		});
	};
	
	if (string) {
	
	};
	
	return seed;
};